/**
 ***********************************************************************************************************
 * Interface to allow sorting on geometries
 ***********************************************************************************************************
 * @file RBGeometrySorter.h
 ***********************************************************************************************************/

#ifndef __RBGEOMETRYSORTER_H__
#define __RBGEOMETRYSORTER_H__

#ifdef  HEADER_ONCE
#pragma HEADER_ONCE
#endif

#ifdef  HEADER_MSG
#pragma HEADER_MSG(RBGeometrySorter.h)
#endif

/***********************************************************************************************************
 * Includes
 ***********************************************************************************************************/
#include <RBMain/RBHandle.h>

/***********************************************************************************************************
 * Forward declarations
 ***********************************************************************************************************/
class RBGeometry;
RBDeclareHandle(RBGeometry);

/***********************************************************************************************************
 * Classes
 ***********************************************************************************************************/

class RBGeometrySorter
{
public:
    virtual bool    operator()          (RBGeometryHandle lhs, RBGeometryHandle rhs) const = 0;
};

/***********************************************************************************************************/

#endif // __RBGEOMETRYSORTER_H__
